home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus Leser 15 / Amiga Plus Leser CD 15.iso / Tools / Development / yacas_alg / yacas_morphos / share / yacas / include / tokenizer.h < prev    next >
Encoding:
C/C++ Source or Header  |  2002-03-13  |  772 b   |  37 lines

  1. /** \file tokenizer.h
  2.  * definitions of input output classes that read and write from string.
  3.  */
  4.  
  5.  
  6. #ifndef __tokenizer_h__
  7. #define __tokenizer_h__
  8.  
  9. #include "yacasbase.h"
  10. #include "lispstring.h"
  11. #include "lispio.h"
  12. #include "lisphash.h"
  13. class LispTokenizer : public YacasBase
  14. {
  15.     
  16. public:
  17.     /// NextToken returns a string representing the next token,
  18.     /// or an empty list.
  19.     virtual LispStringPtr NextToken(LispInput& aInput,
  20.                                     LispHashTable& aHashTable);
  21.     virtual ~LispTokenizer(){}
  22. private:
  23.     LispString iToken; //Can be used as a token container.
  24. };
  25.  
  26. // utility functions
  27. LispBoolean IsDigit(LispChar c);
  28. LispBoolean IsAlpha(LispChar c);
  29. LispBoolean IsAlNum(LispChar c);
  30. LispBoolean IsSymbolic(LispChar c);
  31.  
  32.  
  33.  
  34. #endif
  35.  
  36.  
  37.